package com.lzh3.DAO;

import java.sql.Connection;
import java.sql.Date;
import java.util.List;

import com.lzh2.bean.Customers;

/*
 * 此接口用于规范针对于customers表的常用方法
 */
public interface CustomerDAO {
	
	/**
	 * 将cust对象添加到数据库中
	 * @param conn
	 * @param cust
	 * @author liuzhihao
	 * @date 2021年4月25日上午10:34:13
	 */
	void insert(Connection conn,Customers cust);
	
	/**
	 * 根据指定的id,删除表中的一条数据
	 * @param conn
	 * @param id
	 * @author liuzhihao
	 * @date 2021年4月25日上午10:34:54
	 */
	void deleteById(Connection conn,int id);
	
	/**
	 * 针对内存中的cust对象，去修改数据表中指定的记录
	 * @param conn
	 * @param cust
	 * @author liuzhihao
	 * @date 2021年4月25日上午10:36:23
	 */
	void update(Connection conn,Customers cust);
	
	/**
	 * 针对指定的id查询对应的Customers对象
	 * @param conn
	 * @param id
	 * @author liuzhihao
	 * @date 2021年4月25日上午10:37:17
	 */
	Customers getCustomerById(Connection conn,int id);
	/**
	 * 查询表中的所有记录构成的集合
	 * @param conn
	 * @return
	 * @author liuzhihao
	 * @date 2021年4月25日上午10:39:02
	 */
	List<Customers> getAll(Connection conn);
	/**
	 * 返回数据表中的数据的条目数
	 * @param conn
	 * @return
	 * @author liuzhihao
	 * @date 2021年4月25日上午10:39:58
	 */
	Long getCount(Connection conn);
	
	/**
	 * 返回数据表中最大的生日
	 * @param conn
	 * @return
	 * @author liuzhihao
	 * @date 2021年4月25日上午10:40:52
	 */
	Date getMaxBirth(Connection conn);
}
